package com.lnking.lnkingplace.model.request.user;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.lnking.starter.export.annotation.TableColumn;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Pattern;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * @author 联坤
 */
@Data
public class UserAddRequest {

    /**
     * 名字
     */
    @ApiModelProperty("名字")
    @TableField("name")
    private String name;

    /**
     * 电话
     */
    @ApiModelProperty("电话")
    @Pattern(regexp = "^((17[0-9])|(14[0-9])|(13[0-9])|(15[0-9])|(16[0-9])|(18[0-9])|(19[0-9]))\\d{8}$", message = "电话格式不正确")
    @TableField("phone")
    private String phone;


    /**
     * 类型
     */
    @ApiModelProperty("类型")
    @TableField("type")
    private String type;



    /**
     * 身份证号码
     */
    @ApiModelProperty("身份证号码")
    @TableField("id_card")
    private String idCard;

    /**
     * 性别
     */
    @ApiModelProperty("性别")
    @TableField("sex")
    private String sex;

    /**
     * 籍贯
     */
    @ApiModelProperty("籍贯")
    @TableField("native_place")
    private String nativePlace;

    /**
     * 现居地址
     */
    @ApiModelProperty("现居地址")
    @TableField("address")
    private String address;

    /**
     * 入职时间
     */
    @ApiModelProperty("入职时间")
    @TableField("entry_time")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime entryTime;


    /**
     * 场所Id
     */
    @ApiModelProperty("场所Id")
    @TableField("place_id")
    private String placeId;

    /**
     * 学历
     */
    @ApiModelProperty("学历")
    @TableField("education")
    private String education;



    @ApiModelProperty("紧急联系人")
    private String urgentName;
    /**
     * 紧急联系人：联系方式
     */
    @ApiModelProperty("紧急联系人联系方式")
    private String urgentPhone;

    /**
     * 有无重大疾病史
     */
    @ApiModelProperty("有无重大疾病史")
    @TableField("disease")
    private String disease;


    /**
     *  证件
     */
    @ApiModelProperty("证件")
    @TableField("photos")
    private String  photos;

    @ApiModelProperty("是否在岗")
    private String  onDuty;
}
